package homes.java;

import java.util.ArrayList;

import negocio.java.PatenteNoDetectadaException;
import negocio.java.Vehiculo;

public class VehiculosInfractores {

	private ArrayList<Vehiculo> infractores;

	private static VehiculosInfractores instance = null;

	private VehiculosInfractores() {
		this.infractores = new ArrayList<Vehiculo>();
	}

	public static void reset() {
		instance = null;
	}

	public static synchronized VehiculosInfractores getInstance() {
		if (instance == null)
			instance = new VehiculosInfractores();
		return instance;
	}

	public void addInfractor(Vehiculo vehiculo) {
		this.infractores.add(vehiculo);
	}

	/**
	 * Busca un veh�culo que tenga la patente pasada por par�metro y si no
	 * existe, la agrega a la colecci�n
	 * 
	 * @param patente
	 * @return vehiculo
	 */
	public Vehiculo getVehiculoByPatente(String patente) {

		for (Vehiculo vehiculo : this.infractores) {
			if (patente == vehiculo.getPatente()) {
				return vehiculo;
			}
		}
		throw new PatenteNoDetectadaException();
	}
}
